Criando uma lixeira [Melhorado]
Publicado por Sandro Marcell 18/07/2007
[ Hits: 5.274 ]
Homepage: http://sanmarcell.wordpress.com
Versão melhorada de um script que cria uma simples lixeira para o usuário. (Versão CShell)
Dica:
Coloque esta linha em seu .bashrc:
alias rm=nome_do_script
Assim toda vez que você chamar pelo terminal o comando rm, estará invocando este script.
Falou!!!
#!/bin/csh # # Criando uma simples lixeira. # (Versão CShell) # # Autor: Sandro Marcell (sandro_marcell@yahoo.com.br) # # Obs.: # Arquivos e diretórios são removidos sem pedido de confirmação. # É possível o uso do metacaractere (*). # A opção -r remove a lixeira. # Checando parâmetros: if ($#argv == 0) then echo "Uso: `basename $0` arquivo1 [arquivoN]\ ou\ `basename $0` -r [Para remover a lixeira]" exit endif # Criando a lixeira: set LIXEIRA = $home/lixeira if (! -e $LIXEIRA) then mkdir $LIXEIRA endif # O que fazer? switch ($argv[1]) # Remover a lixeira! case -r: # Descartando a opção -r: shift # Checando parâmetros: if ($#argv >= 1) then echo "Erro: A opção [-r] não aceita parâmetros!" exit else # Perguntando antes de remover: echo -n "Deseja realmente remover a lixeira? [s/n]:" # Capturando resposta: set R = $< # Checando resposta: if ($R == s || $R == S) then # Removendo rm -R -f $LIXEIRA >& /dev/null echo "Lixeira removida!" exit else if ($R == n || $R == N) then echo "Saindo..." exit else echo "[$R] Resposta inválida." exit endif endif breaksw # ou mandar tudo pro lixo... default: # Início do loop: foreach A ($argv) # Testes condicionais: if (! -e $A) then echo "-> Arquivo ou diretório não encontrado." continue else if (! -w $A) then echo "-> Sem permissão para remover." continue endif # Removendo: ls $A | xargs cp -R -f $A --target-directory=$LIXEIRA >& /dev/null ls $A | xargs rm -R -f $A >& /dev/null echo "Arquivo removido!" end breaksw endsw # Fim
montagem de disquete e cd rom (usando dialog)
Script que verifica se existem arquivos repetidos em dois diretórios
Inclusão e exclusão de usuários num PDC
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Como gerar um podcast a partir de um livro em PDF
Organizando seus PDF com o Zotero
Erro no realm join [Resolvido]
Um programa para baixar vídeos: Parabolic
Como Definir o Painel Principal em Múltiplos Monitores no Linux Mint
Sempre que vou baixar algum pacote acontece o erro dpkg (2)
BlueMail não abre no Kubuntu 25.04 (6)
Não consigo montar meu cartão SD (5)
aplicativos criados com webapp-manager não aparecem no menu do xfce (1)